<?php
/**
 * Created by PhpStorm.
 * User: wuqiang
 * Date: 2017/9/27
 * Time: 下午12:02
 */

namespace App\Http\Controllers;


use Illuminate\Http\Request;
use Config;
use Illuminate\Support\Facades\DB;
use App\Models\News;


class HomeController extends Controller
{

    private $config_imm;

    function __construct()
    {
        $this->config_imm = Config::get('imm.category');
    }

    function index()
    {
        $temp_arr = [
            [

                "id" => 1,
                "img_url" => "images/new/banner-2.png",
                "caption" => "依照荷兰王国库拉索省《2014投资者许可法》，投资人最低申购9万美元荷属加勒比投资储备金，即可获得荷兰王国库拉索省居留卡， 持有五年后可以自由迁徙。",
                "tagline" => " 荷兰库拉索省移民项目依照荷兰王国库拉索省《2014投资者许可法》，投资人最低申购9万美元荷兰王国库拉索基建储备金，即可获得荷兰王国库拉索省居留卡， 持有五年后可以申请荷兰国籍。该项目经荷兰王国库拉索省政府批准，以针对促进荷兰及库拉索省经济为目的引进投资者， 并为其提供办理居留手续和入籍手续。此项目是获得荷兰国籍最简单、快捷，无任何风险的合法投资移民渠道。无需创造就业岗位，无需缴税，无强制居要求。5年后入籍，享受荷兰王国公民的全部福利待遇。》"
            ],
            [
                "id" => 7,
                "img_url" => "images/new/banner-3.png",
                "caption" => "依照荷兰王国库拉索省《2014投资者许可法》，投资人最低申购9万美元荷属加勒比投资储备金，即可获得荷兰王国库拉索省居留卡， 持有五年后可以自由迁徙。依照荷兰王国库拉索省《2014投资者许可法》，投资人最低申购9万美元荷属加勒比投资储备金，即可获得荷兰王国库拉索省居留卡， 持有五年后可以自由迁徙。依照荷兰王国库拉索省《2014投资者许可法》，投资人最低申购9万美元荷属加勒比投资储备金，即可获得荷兰王国库拉索省居留卡， 持有五年后可以自由迁徙。依照荷兰王国库拉索省《2014投资者许可法》，投资人最低申购9万美元荷属加勒比投资储备金，即可获得荷兰王国库拉索省居留卡， 持有五年后可以自由迁徙。依照荷兰王国库拉索省《2014投资者许可法》，投资人最低申购9万美元荷属加勒比投资储备金，即可获得荷兰王国库拉索省居留卡， 持有五年后可以自由迁徙。依照荷兰王国库拉索省《2014投资者许可法》，投资人最低申购9万美元荷属加勒比投资储备金，即可获得荷兰王国库拉索省居留卡， 持有五年后可以自由迁徙。早在2001年荷兰就将同性恋婚姻纳入了婚姻法,也是世界上第一个正式将同性婚姻合法化的国家。现如今有超过15,000对同性情侣享受到了这一法案带来的好处.不论是同性情侣或者是性别认同症者在荷兰都可以选择下列三种方式之一来巩固他们的关系：婚姻、注册伴侣关系、同居协议。并且上述三种方式都受到法律保护，获得同性婚姻的权利。》",
                //"caption" => "早在2001年荷兰就将同性恋婚姻纳入了婚姻法,也是世界上第一个正式将同性婚姻合法化的国家。现如今有超过15,000对同性情侣享受到了这一法案带来的好处.不论是同性情侣或者是性别认同症者在荷兰都可以选择下列三种方式之一来巩固他们的关系：婚姻、注册伴侣关系、同居协议。并且上述三种方式都受到法律保护，获得同性婚姻的权利。》",
                "tagline" => "早在2001年荷兰就将同性恋婚姻纳入了婚姻法,也是世界上第一个正式将同性婚姻合法化的国家。现如今有超过15,000对同性情侣享受到了这一法案带来的好处.不论是同性情侣或者是性别认同症者在荷兰都可以选择下列三种方式之一来巩固他们的关系：婚姻、注册伴侣关系、同居协议。并且上述三种方式都受到法律保护，获得同性婚姻的权利。》"
            ],
            [
                "id" => 11,
                "img_url" => "images/new/banner-4.png",
                "caption" => "荷兰为欧洲“福利国家”典范，其“从摇篮到坟墓”的高福利政策为社会安定经济的发展提供了有效保障。福利水平要远高于加拿大、英国、德国和匈牙利，同丹麦、瑞典，挪威等向来以高福利闻名的北欧国家基本持平。",
                "tagline" => "全球养老金指数世界第一</br>欧盟各国医疗体系排名第一</br>全球儿童福利世界排名第一</br>全球平均身高世界排名第一</br>全球饮食健康指数世界第一</br>全球人均拥有自行车量第一</br>非英语国家英语普及度世界第一</br>全球退休养老系统世界第二</br>全球农产品出口量世界第二</br>全球投资环境竞争力世界排名第三</br>全球宜居国家世界排名第四</br>全球快乐国家世界排名第四"
            ],
            [
                "id" => 13,
                "img_url" => "images/new/banner-5.png",
                "caption" => "荷兰为欧洲“福利国家”典范，其“从摇篮到坟墓”的高福利政策为社会安定经济的发展提供了有效保障。福利水平要远高于加拿大、英国、德国和匈牙利，同丹麦、瑞典，挪威等向来以高福利闻名的北欧国家基本持平。",
                "tagline" => "全球养老金指数世界第一</br>欧盟各国医疗体系排名第一</br>全球儿童福利世界排名第一</br>全球平均身高世界排名第一</br>全球饮食健康指数世界第一</br>全球人均拥有自行车量第一</br>非英语国家英语普及度世界第一</br>全球退休养老系统世界第二</br>全球农产品出口量世界第二</br>全球投资环境竞争力世界排名第三</br>全球宜居国家世界排名第四</br>全球快乐国家世界排名第四"
            ]
        ];

        $result = $this->config_imm;

        //echo '$result'."<pre>";print_r($result);echo "</pre>";die;
        if (!empty($result)) {
            foreach ($result as $key => $value) {
                if (!empty($temp_arr[$key]) && ($value['id'] == $temp_arr[$key]['id'])) {
                    $result[$key]['img'] = $temp_arr[$key]['img_url'];
                    $result[$key]['caption'] = $temp_arr[$key]['caption'];
                    $result[$key]['tagline'] = $temp_arr[$key]['tagline'];
                }
            }

        }
        return view('index', ['data' => $result, 'config_imm' => $this->config_imm]);
    }

    function details(Request $request)
    {
        $result = $config_imm = Config::get('imm.category');
        $id = $request->route('id');
        $temp_arr = [];
        $category_name = '';
        foreach ($result as $key => $value) {
            if (!empty($value['category'])) {
                foreach ($value['category'] as $k => $val) {
                    if ($val['id'] == $id) {
                        $temp_arr = $value;
                        $category_name = $val['name'];
                        break;
                    }
                }

            }

        }
        $details = DB::select('select * from i_news where typeid = ' . $id);
        if (!empty($details)) {
            foreach ($details as $k => $v) {
                $details[$k] = (array)$v;
            }
        } else {
            $details[0] = [];
        }
        return view('details', ['config_imm' => $config_imm, 'id' => $id, 'details' => $details[0], 'data' => $result, 'sib_arr' => $temp_arr, 'category_name' => $category_name]);

    }

    function submit(Request $request)
    {
        $data['msg'] = '';
        $data['status'] = 1;
        $info['name'] = $request->post('name');
        $info['mobile'] = $request->post('tel');
        $info['content'] = $request->post('content');

        $info['created_at'] = date('Y-m-d H:i:s');
        DB::insert("insert into i_contact(name, mobile,content,created_at) values (?, ? ,?,?)", array_values($info));
        $data['msg'] = '感谢您的留言，我们会第一时间联系您!';

        return json_encode($data);
        //return back()->with('msg', $data['msg']);
    }

    function news_list(Request $request)
    {
        $list = [];
        $page_size = 4;
        $current_page = empty($request->fpage) ? 1 : $request->fpage;
        $data = News::where('typeid', '=', 23)->orderBy('created_at', 'desc');
        $data = $data->paginate($page_size, ['id', 'title', 'content', 'created_at'], 'page', $current_page);
        $items = $data->items();
        $total = $data->total();
        $total_page = $total % $page_size == 0 ? $total / $page_size : intval($total / $page_size) + 1;
        if (!empty($items)) {
            foreach ($items as $item) {
                $list[] = [
                    'year' => date("Y", strtotime($item['created_at'])),
                    'month' => date("m", strtotime($item['created_at'])),
                    'day' => date("d", strtotime($item['created_at'])),
                    'img' => $this->get_img($item['content']),
                    'summary' => $this->get_summary($item['content']),
                    'title' => $item['title'],
                    'id' => $item['id']
                ];
            }
        }


        return view('news', ['data' => $list, 'config_imm' => $this->config_imm, 'total_page' => $total_page, 'current_page' => $current_page]);
    }


    function news_details(Request $request)
    {

    }

    private function get_img($content)
    {
        $pattern = "/<[img|IMG].*?src=[\'|\"](.*?(?:))[\'|\"].*?[\/]?>/";
        preg_match_all($pattern, $content, $matchContent);
        if (isset($matchContent[1][0])) {
            $temp = $matchContent[1][0];
        } else {
            $temp = "https://www.baidu.com/img/bd_logo1.png";
        }
        return $temp;
    }

    private function get_summary($content)
    {
        $newContent = strip_tags(stripslashes($content));
        $newContent = trim($newContent);
        $patternArr = array('/\s/', '/ /');
        $replaceArr = array('', '');
        $newContent = preg_replace($patternArr, $replaceArr, $newContent);
        $newContent = mb_strcut($newContent, 0, 150, 'utf-8');
        return $newContent;
    }

}